#!/usr/bin/env python3
"""
开发环境快速启动脚本
包含数据库初始化和服务启动
"""
import subprocess
import sys
import os
from test_connection import test_database_connection
from init_db import init_database

def main():
    """开发环境主函数"""
    print("🚀 开发环境启动 - 三江译舟后端API")
    print("=" * 60)
    
    # 检查Python版本
    python_version = sys.version_info
    print(f"🐍 Python版本: {python_version.major}.{python_version.minor}.{python_version.micro}")
    
    # 1. 测试数据库连接
    print("\n1️⃣ 测试数据库连接...")
    if not test_database_connection():
        print("❌ 数据库连接失败，请检查配置后重试")
        return
    
    # 2. 初始化数据库表
    print("\n2️⃣ 初始化数据库表...")
    try:
        init_database()
    except Exception as e:
        print(f"❌ 数据库初始化失败: {e}")
        return
    
    # 3. 启动开发服务器
    print("\n3️⃣ 启动开发服务器...")
    print("🔧 开发模式: 热重载已启用")
    print("📝 日志级别: 详细")
    print("🌐 服务地址: http://localhost:8220")
    print("📚 API文档: http://localhost:8220/docs")
    print("🛑 按 Ctrl+C 停止服务")
    print("=" * 60)
    
    try:
        # 启动uvicorn开发服务器
        subprocess.run([
            sys.executable, "-m", "uvicorn", 
            "main:app", 
            "--host", "0.0.0.0", 
            "--port", "8220", 
            "--reload",
            "--log-level", "debug"
        ])
    except KeyboardInterrupt:
        print("\n👋 开发服务器已停止")
    except Exception as e:
        print(f"❌ 启动失败: {e}")

if __name__ == "__main__":
    main()
